<?php
include_once("../inc/common.php");

// Inicialização dos dados de saída ///////////////////////////////
$result["ok"] = "0";// 0 Insere

// Captura a ação a ser executada /////////////////////////////////
$action = Param::get("action");

$dataAtual = date('Y-m-d');
// Salvar user///////////////////////////////////////////////////
if ($action == "salvar") {
	// Prepara dados de retorno
	$result["ok"] = "0"; // começa com não OK
	$data = Dates::format(Param::get("f_data"));
	$error = new Error();
	if ($error->hasError()) {//se tiver erro
		$result["erro"] = $error->toString();
	} else {
		$sql = new UpdateSQL();
		$sql->setTable("portfolio");//seta a tabela
		$sql->setKey("id_portfolio", 	Param::getInt("f_id"), "Number");//primary key
		$sql->addField("nome_projeto",	Param::getString("f_projeto"), "String" );//("Nome do tb_campo sq,id do campo, tipo")
		$sql->addField("localidade",	Param::getString("f_localidade"), "String");
		$sql->addField("data", 			$dataAtual, "Date");
		$sql->addField("ativo", 		Param::getInt("chk_ativo"), "Number");
		$categorias = Param::get('f_listboxlov');

		//Update function
		if (Param::getInt("f_id") > 0) { // se id for maior que zero (Edita dados)
			$sql->setAction("UPDATE");
			DBUtils::executeSQL($sql->getSQL());
			$result["modo"] = "a";
			$last_id = Param::getInt("f_id");
			$sql2 = "DELETE FROM portfolio_para_categorias WHERE portfolio_id_portfolio={$last_id}";
			DBUtils::executeSQL($sql2);
			} else { // Caso contrario Inseri dados
			$sql->setAction("INSERT");
			$last_id = DBUtils::executeSQL($sql->getSQL());
			$result["modo"] = "i";
			$result["id"] = $last_id;
		}
		
		foreach($categorias as $value){
			$sql2 = "INSERT INTO portfolio_para_categorias VALUES({$last_id},{$value})";
			DBUtils::executeSQL($sql2);
		}

		$result["sucesso"] = "Dados atualizados com sucesso!";
		$result["ok"] = "1";// 1 - edita
		Messages::sendSuccess($result["sucesso"]);
		
		
		/*Galeria portfolio*/
            $oImg = new canvas();

            // Tratamento dos campos
            $imagens = Param::getArray("imagens_upadas_");
            $legendas = Param::getArray("legenda_");
			
			
			//Faz com cadas Imagem
            foreach ($imagens as $key => $value) {
			//Pega a extensão da imagem
                $extensao = array_reverse(explode('.', $value));
                $extensao = $extensao[0];
					
				//Divida a imagem em nome e extensao e grava no Array
                $rowImagem[$key]['nome'] = str_replace($extensao, '', $value);
                $rowImagem[$key]['extensao'] = $extensao;
              //  $rowImagem[$key]['ordem'] = $key + 1;

				//Serar os cominhos da imagem antigo e novo caminho e lugar da Thumbs
                $tempFile   = rtrim(FILE_PATH_TEMP, '/') . '/' . $value;
                $realFile   = rtrim(FILE_PATH, '/') . '/portfolio/' . $value;
                $dir_thumbs = rtrim(FILE_PATH, '/') . '/portfolio/thumbs/' . $value;
                //$oImg->carrega($tempFile);
                //$oImg->grava($realFile);
                
                //Se conseguir trocar de pasta faz...
                if(rename($tempFile, $realFile)){
                   
                    $oImg   ->carrega($realFile);
                    //$oImg   ->hexa( '#F5F5F5' );
                    $oImg   ->redimensiona(186,140,'proporcional');
                    $oImg   ->grava($dir_thumbs);
                    //Redimensiona Imagem
                    $oImg   ->carrega($realFile);
                    if($oImg->getLargura()>780)
                    	$oImg   ->redimensiona(780);
                    $oImg   ->grava($realFile);
                   
                }
                
                
                
            }
            
            foreach ($legendas as $key => $value) {

                if ($value == 'Insira uma Legenda')
                    $value = '';
				// Adicionando o atributo legenda para cada im
                $rowImagem[$key]['legenda'] = $value;
                $rowImagem[$key]['galeria'] = $last_id;
            }

            $insert = "INSERT INTO `imagens` (`nome`,`extensao`,`legenda`,`portfolio_id_portfolio`) VALUES ";

            foreach ($rowImagem as $key => $value) {
                $virgula = ',';

                if ($value == end($rowImagem))
                    $virgula = '';

                $insert .= "('" . implode("','", $value) . "')" . $virgula;
            }
            DBUtils::delete('imagens', 'portfolio_id_portfolio', $last_id);

            DBUtils::executeSQL($insert);
        }
	

			echo json_encode($result);
}
// excluir imagem
    if ($action == 'excluirimagem') {
		
        $imagem = Param::get("imagem");
        $pasta = Param::get("folder");
        $id = Param::getInt("id");
        $realFile = rtrim(FILE_PATH, '/') . '/' . $pasta . '/' . $imagem;

        if (unlink($realFile)) :
			DBUtils::delete("imagens", "id_imagem", $id);
            $retorno['msg'] = 'Imagem Excluida Com Sucesso';
            $retorno['status'] = TRUE;
        else:
            $retorno = "Erro durante a exclusão";
            $retorno['status'] = FALSE;
        endif;

        echo json_encode($retorno);
    }

// Excluir User //////////////////////////////////////////////////
if ($action == "excluir") {
	$error = new Error();
	if (!Security::isValidUser("feedback_consultar")) {
		Messages::sendError("Você não tem permissão para esta operação");
		Http::redirect("../mod_portfolio/portfolio_lista.php");
	}
	$itens = Param::getStringFromArray("sel");//array das checkbox
	if (strlen($itens) == 0){
		$error->add("Nenhum registro selecionado.");
	}
	if (!$error->hasError()) {	
		DBUtils::delete("portfolio_para_categorias", "portfolio_id_portfolio", $itens);
		DBUtils::delete("imagens", "portfolio_id_portfolio", $itens);
		DBUtils::delete("portfolio", "id_portfolio", $itens);

		//Exclui a imagem
		//unlink()
	}else{
		Messages::sendError("Erro durante a exclusão");
	}
	// Retorna
	Http::redirect("../mod_portfolio/portfolio_lista.php");
}

?>
